home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / lib / c / etc / RCS / shmget.man,v < prev    next >
Text File  |  1990-06-27  |  4KB  |  212 lines

  1. head     1.3;
  2. branch   ;
  3. access   ;
  4. symbols  ;
  5. locks    ; strict;
  6. comment  @@;
  7.  
  8.  
  9. 1.3
  10. date     90.06.27.11.17.36;  author shirriff;  state Exp;
  11. branches ;
  12. next     1.2;
  13.  
  14. 1.2
  15. date     90.03.19.13.33.05;  author jhh;  state Exp;
  16. branches ;
  17. next     1.1;
  18.  
  19. 1.1
  20. date     90.02.20.14.06.26;  author jhh;  state Exp;
  21. branches ;
  22. next     ;
  23.  
  24.  
  25. desc
  26. @@
  27.  
  28.  
  29. 1.3
  30. log
  31. @Updated BUGS part of man page.
  32. @
  33. text
  34. @.\" SCCSID: @@(#)shmget.2    4.1    12/9/88
  35. .TH shmget 2
  36. .SH NAME
  37. shmget \- get shared memory segment
  38. .SH SYNTAX
  39. .nf
  40. .ft B
  41. #include <sys/types.h>
  42. #include <sys/ipc.h>
  43. #include <sys/shm.h>
  44. .PP
  45. .ft B
  46. int shmget (key, size, shmflg)
  47. key_t key;
  48. int size, shmflg;
  49. .fi
  50. .SH DESCRIPTION
  51. .NXR "shmget system call"
  52. .NXA "shmget system call" "ftok subroutine"
  53. .NXA "shmget system call" "shmctl system call"
  54. .NXA "shmget system call" "shmop system call"
  55. .NXR "shared memory" "getting"
  56. The
  57. .PN shmget
  58. system call
  59. returns the shared memory identifier associated with
  60. .I key.
  61. .sp
  62. A shared memory identifier and associated data
  63. structure and shared memory
  64. segment of size
  65. .I size
  66. bytes 
  67. are created for
  68. .I key
  69. if one of the following are true:
  70. .RS 8
  71. .PP
  72. The
  73. .I key
  74. is equal to IPC_PRIVATE.
  75. For further information, see intro(2).
  76. .PP
  77. The
  78. .I key
  79. does not already have a shared memory
  80. identifier associated with it, and 
  81. .RI ( shmflg
  82. & IPC_CREAT ) is "true".
  83. .RE
  84. .PP
  85. Upon creation, the data structure associated with the new shared memory
  86. identifier is initialized as follows:
  87. .RS 8
  88. .PP
  89. The
  90. .BR shm_perm.cuid, shm_perm.uid, shm_perm.cgid,
  91. and
  92. .B shm_perm.gid
  93. are set equal to the effective user ID
  94. and effective group ID, respectively, of
  95. the calling process.
  96. .PP
  97. The low-order 9 bits of 
  98. .B shm_perm.mode
  99. are set equal to the low-order 9 bits of
  100. .I shmflg.
  101. The
  102. .B shm_segsz 
  103. is set equal to the value of
  104. .I size.
  105. .PP
  106. The
  107. .BR shm_lpid, shm_nattch, shm_atime,
  108. and
  109. .B shm_dtime
  110. are set equal to 0.
  111. The
  112. .B shm_ctime
  113. is set equal to the current time.
  114. .RE
  115. .SH RETURN VALUE
  116. Upon successful completion,
  117. a non-negative integer, namely a shared memory
  118. identifier is returned.  Otherwise, a value of \-1 is returned and
  119. .I errno
  120. is set to indicated the error.
  121. .SH DIAGNOSTICS
  122. .NXR "shmget system call" "diagnostics"
  123. The
  124. .PN shmget
  125. system call
  126. will fail if one or more of the following are true:
  127. .TP 15
  128. [EINVAL]
  129. The
  130. .I size
  131. is less than the system imposed minimum
  132. or greater than the system imposed maximum. 
  133. .TP 15
  134. [EACCES]
  135. A shared memory identifier exists for 
  136. .I key
  137. but operations permission
  138. as specified by the low-order 9 bits of 
  139. .I shmflg
  140. would not be granted. 
  141. For further information, see 
  142. .MS errno 2 .
  143. .TP 15
  144. [EINVAL]
  145. A shared memory identifier exists for
  146. .I key
  147. but the size of the segment associated with it is less than
  148. .I size
  149. and
  150. .I size
  151. is not equal to zero. 
  152. .TP 15
  153. [ENOENT]
  154. A shared memory identifier does not exist for
  155. .I key 
  156. and
  157. .RI ( shmflg
  158. & IPC_CREAT )
  159. is "false". 
  160. .TP 15
  161. [ENOSPC]
  162. A shared memory identifier is to be
  163. created but the system imposed limit on the
  164. maximum number of allowed shared memory
  165. identifiers system wide would be exceeded. 
  166. .TP 15
  167. [ENOMEM]
  168. A shared memory identifier and
  169. associate shared memory segment are to be
  170. created by the amount of available
  171. physical memory is not sufficient to fill
  172. the request. 
  173. .TP 15
  174. [EEXIST]
  175. A shared memory identifier exists for 
  176. .I key
  177. but 
  178. .RI (( shmflg
  179. & IPC_CREAT )
  180. .RI ( shmflg
  181. & IPC_EXCL ))
  182. is "true". 
  183. .SH SEE ALSO
  184. shmctl(2), shmop(2), ftok(3)
  185. .SH BUGS
  186. The System V shared memory functions are implemented at user level on top
  187. of the mmap(2) interface.  Not all the System V functionality is
  188. implemented.
  189. @
  190.  
  191.  
  192. 1.2
  193. log
  194. @assorted man pages
  195. @
  196. text
  197. @d42 1
  198. a42 2
  199. For further information, see 
  200. .MS intro 2 .
  201. d153 4
  202. @
  203.  
  204.  
  205. 1.1
  206. log
  207. @Initial revision
  208. @
  209. text
  210. @@
  211.